#ifndef _UI_NUMBER_H_
#define _UI_NUMBER_H_

#ifdef _WIN32
#pragma once
#endif

#include <sstream>

#include "ui_text.h"

using std::stringstream;

class CUINumber : public CUIText
{
public:
    CUINumber(long int nValue);

    CUINumber &operator+=(long int nOther);
    CUINumber operator+(long int nOther) const;

    CUINumber &operator-=(long int nOther);
    CUINumber operator-(long int nOther) const;

    CUINumber &operator*=(long int nOther);
    CUINumber operator*(long int nOther) const;

    CUINumber &operator/=(long int nOther);
    CUINumber operator/(long int nOther) const;

    CUINumber &operator++();
    CUINumber &operator--();
    CUINumber operator++(int);
    CUINumber operator--(int);

    void setValue(long int nValue);
    void updateValue(long int nValue);
    long int getValue() const;

private:
    long int m_nValue;
};

#endif